#!/usr/bin/gnuplot
#se ejecuta primero haciendo
# chmod +x scriptGNUPlot.sh
# y después
#./scriptGNUPLot.sh
set title "Test Grafo entrada Completo" #el título de arriba
#set xrange [1:80]
#set yrange [1:1e+10]
set xlabel "Cantidad de Rutas"
set ylabel "Cantidad de Operaciones"
set grid #para que aparezca la grilla
set term png size 900, 600  #le digo que la salida es un PNG
set output "./Ej1/graficos/completo.png" #le digo que a la salida la guarde a un archivo, no que la trate de abrir 
#set logscale #que use escala logarítmica
set key left top samplen 4 #que ponga las leyendas arriba a la izquierda
set style line 1 lt -1 lw 1 pt -1 ps 0.5 #que cambie el tipo de ploteado del primer tipo de línea (ls 1)
set style line 2 lt 1 lw 1 pt 1 ps 0.5 #que cambie el tipo de ploteado del segundo tipo de línea (ls 2)
set style line 3 lt 2 lw 1 pt 3 ps 0.5
set style line 4 lt 3 lw 1 pt 5 ps 0.5 
set style line 5 lt 4 lw 1 pt 10 ps 0.5
# lt must be specified before pt for colored points
# lt chooses a particular line type: -1=black 1=red 2=grn 3=blue 4=purple 5=aqua 6=brn 7=orange 8=light-brn
# pt gives a particular point type: 1=diamond 2=+ 3=square 4=X 5=triangle 6=*
# lw chooses a line width 1=normal, can use 0.8, 0.3, 1.5, 3, etc.
cuad1(x) = 70*x*log((1+sqrt(1+8*x))/2)
lineal2(x) = 3*x-20
#fit lineal(x) "Tp2Ej3.UnMov.in.testRend" via a
plot cuad1(x) ls 1 title "70*m*log(n)", \
		"./Ej1/completo.in.testRend.calc" ls 4 title "Test contador sólo de 'calcular_peso'", \
		"./Ej1/completo.in.testRend.krus" ls 2 title "Test contador sólo de 'Kruskal'", \
		"./Ej1/completo.in.testRend.map" ls 5 title "Test contador sólo de 'mapearAVertice'", \
		"./Ej1/completo.in.testRend.comp" ls 3 title "Test contador total (suma de los 3)"
#################################################################################################
set title "Test Grafo entrada Disperso" #el título de arriba
set output "./Ej1/graficos/disperso.png" #le digo que a la salida la guarde a un archivo, no que la trate de abrir 
cuad2(x) = 85*x*log( (3+sqrt(9+240*x))/6 )
plot cuad2(x) ls 1 title "85*m*log(n)", \
		"./Ej1/disperso.in.testRend.calc" ls 4 title "Test contador sólo de 'calcular_peso'", \
		"./Ej1/disperso.in.testRend.krus" ls 2 title "Test contador sólo de 'Kruskal'", \
		"./Ej1/disperso.in.testRend.map" ls 5 title "Test contador sólo de 'mapearAVertice'", \
		"./Ej1/disperso.in.testRend.comp" ls 3 title "Test contador total (suma de los 3)"
#################################################################################################
set title "Test Grafo entrada Árbol" #el título de arriba
set output "./Ej1/graficos/arbol.png" #le digo que a la salida la guarde a un archivo, no que la trate de abrir 
cuad2(x) = 140*x*log(x+1)
plot cuad2(x) ls 1 title "140*m*log(n)", \
		"./Ej1/arbol.in.testRend.calc" ls 4 title "Test contador sólo de 'calcular_peso'", \
		"./Ej1/arbol.in.testRend.krus" ls 2 title "Test contador sólo de 'Kruskal'", \
		"./Ej1/arbol.in.testRend.map" ls 5 title "Test contador sólo de 'mapearAVertice'", \
		"./Ej1/arbol.in.testRend.comp" ls 3 title "Test contador total (suma de los 3)"
#################################################################################################
set title "Test Grafo entrada Peor Caso" #el título de arriba
set output "./Ej1/graficos/peorcaso.png" #le digo que a la salida la guarde a un archivo, no que la trate de abrir 
cuad2(x) = 80*x*log((1+sqrt(1+8*x))/2)
plot cuad2(x) ls 1 title "80*m*log(n)", \
		"./Ej1/peorcaso.in.testRend.calc" ls 4 title "Test contador sólo de 'calcular_peso'", \
		"./Ej1/peorcaso.in.testRend.krus" ls 2 title "Test contador sólo de 'Kruskal'", \
		"./Ej1/peorcaso.in.testRend.map" ls 5 title "Test contador sólo de 'mapearAVertice'", \
		"./Ej1/peorcaso.in.testRend.comp" ls 3 title "Test contador total (suma de los 3)"
#################################################################################################
set title "Kruskal y calcular_peso de Completo y Peor Caso" #el título de arriba
set output "./Ej1/graficos/krusk-y-calc.png" #le digo que a la salida la guarde a un archivo, no que la trate de abrir 
cuad2(x) = 11*x*log((1+sqrt(1+8*x))/2)+5000
plot cuad2(x) ls 1 title "11*m*log(n)+5000", \
		"./Ej1/peorcaso.in.testRend.calc" ls 4 title "'calcular_peso' de Peor caso", \
		"./Ej1/peorcaso.in.testRend.krus" ls 2 title "'Kruskal' de Peor caso", \
		"./Ej1/completo.in.testRend.krus" ls 5 title "'Kruskal' de Completo", \
		"./Ej1/completo.in.testRend.calc" ls 3 title "'calcular_peso' de Completo"
